Communication apparatus, control method, and computer-readable storage medium

ABSTRACT

A communication apparatus has a communication function that can concurrently perform first communication in which communication with a partner apparatus is performed via another apparatus that decides a wireless channel to be used in the wireless communication and second communication in which communication with the partner apparatus is performed not via another apparatus by the communication apparatus deciding the wireless channel. In a state in which the first communication and the second communication are concurrently performed, if a connection for the first communication is to be established while a connection for the second communication is established, a second wireless channel used for the second communication is set so as to match the second wireless channel with a first wireless channel to be used when the connection for the first communication is established.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention generally relates to a communication apparatus, acontrol method, and a computer-readable storage medium, particularly toa channel setting technique for wireless communication.

Description of the Related Art

As a wireless connection mode that is used when a communicationapparatus is to be connected to a partner apparatus, either aninfrastructure mode of wirelessly connecting to the partner apparatusvia another apparatus such as an access point (AP) or a peer-to-peer(P2P) mode of wirelessly connecting to the partner apparatus directlycan be used. Note that the P2P mode includes a mode in which thecommunication apparatus or the partner apparatus operates as a basestation such as an AP and performs wireless connection by handling theother apparatus as a terminal accommodated by the base station.

Wi-Fi Direct® is one of the specifications developed for P2P modecommunication. In Wi-Fi Direct, two or more wireless LAN terminals forcommunicating in the P2P mode each play either of a role called a GroupOwner (GO) or a role called a Client (CL). Note that a GO operates likean AP, and a CL operates like a station (STA) which connects to the AP.Note that whether the communication apparatus or the partner apparatusis to operate as a GO is decided by a sequence called a Group OwnerNegotiation. This eliminates the need for a conventional dedicateddevice as an access point, and direct communication between thecommunication apparatus and the partner apparatus is possible. Ingeneral, when a communication apparatus is to operate as an STA or a CL,the decision of a channel to be used is led by an AP which transmits asearch response command in response to a search request command from thecommunication apparatus. Additionally, when a communication apparatus isto operate as a GO, the communication apparatus decides the channel tobe used by comparing the channel information of the CL obtained by theGroup Owner Negotiation and channels that the communication apparatuscan use.

The above-described wireless communications by the infrastructure modeand the P2P mode can be simultaneously (concurrently) executed in asingle apparatus. For example, the communication apparatus can serve asan STA and perform wireless connection with an AP on one hand but canalso function as a GO in the P2P mode to perform wireless connectionwith a partner apparatus functioning as a CL. In this case, thecommunication apparatus can perform wireless connection by usingconcurrent wireless interfaces via two distinct wireless channelsserving as the wireless interfaces. However, when communications areperformed by simultaneously allocating a plurality of channels using asingle wireless IC chip, the apparatus arrangement and processing becomecomplicated. Thus, in practice, a common channel may be used for theaforementioned two modes when performing concurrent communication.

Japanese Patent Laid-Open No. 2014-082685 discloses that, in a case inwhich a first wireless network and a second wireless network are to begenerated, if a channel to be used in the first wireless network hasbeen determined, the same channel is used to generate the secondwireless network. Also, in Japanese Patent Laid-Open No. 2014-082685, ifa channel to be used in the first wireless network has not beendetermined, a predetermined channel is used to generate the secondwireless network.

In the technique of Japanese Patent Laid-Open No. 2014-082685, when thefirst wireless network is to be regenerated after generation andcancellation of the network, the channel which was previously used andis to be used after the regeneration may be different from the channelused in the second wireless network which was generated after the firstwireless network. However, the Japanese Patent Laid-Open No. 2014-082685does not consider a case in which the first wireless network isregenerated after the second wireless network has been generated.

SUMMARY OF THE INVENTION

The present invention can set, in a communication apparatus capable ofcommunicating in a plurality of modes, suitable channels to be used inthe plurality of modes.

According to one aspect of the present invention, there is provided acommunication apparatus comprising: a communication unit capable ofconcurrently performing first communication in which communication witha partner apparatus is performed via another apparatus that decides awireless channel to be used in the wireless communication and secondcommunication in which communication with the partner apparatus isperformed not via another apparatus by the communication apparatusdeciding the wireless channel; and a control unit configured to set,when a connection for the first communication is to be established whilea connection for the second communication is established in a state inwhich the first communication and the second communication areconcurrently performed, a second wireless channel to be used in thesecond communication so that the second wireless channel matches a firstwireless channel to be used when the connection for the firstcommunication is established.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments (with reference to theattached drawings).

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention, andtogether with the description, serve to explain the principles of theinvention.

FIG. 1 is a view showing an example of the configuration of a wirelesscommunication system;

FIG. 2 is a view showing an example of the outer appearance of a mobilecommunication apparatus;

FIG. 3 is a view showing an example of the outer appearance of an MFP;

FIGS. 4A to 4C are views each showing an example of an operation displayunit of the MFP;

FIG. 5 is a block diagram showing the arrangement of the mobilecommunication apparatus;

FIG. 6 is a block diagram showing the arrangement of the MFP;

FIG. 7 is a sequence chart showing an example of the procedure of thewireless connection processing of a software AP mode;

FIG. 8 is a sequence chart showing an example of the procedure of thewireless connection processing of a WFD mode;

FIG. 9 is a sequence chart showing an example of the procedure of thewireless connection processing of the infrastructure mode;

FIG. 10 is a flowchart showing an example of the procedure of wirelessconnection processing according to an embodiment;

FIG. 11 is a flowchart showing an example of the procedure ofreconnection processing of the infrastructure mode; and

FIG. 12 is a flowchart showing another example of the procedure of thereconnection processing of the infrastructure mode.

DESCRIPTION OF THE EMBODIMENTS

An exemplary embodiment(s) of the present invention will now bedescribed in detail with reference to the drawings. It should be notedthat the relative arrangement of the components, the numericalexpressions and numerical values set forth in these embodiments do notlimit the scope of the present invention unless it is specificallystated otherwise.

(System Configuration)

FIG. 1 shows an example of the configuration of a wireless communicationsystem according to this embodiment. The wireless communication systemincludes, for example, a mobile communication apparatus, a printingapparatus (MFP: Multi-Function Peripheral), and an access point (AP).These apparatuses are all communication apparatuses that havecommunication functions, respectively. However, the present invention isnot limited to this. An apparatus other than these apparatuses may beincluded in addition to or in place of these respective apparatusesshown in FIG. 1.

A mobile communication apparatus 200 is, for example, a portablecommunication apparatus which has a wireless LAN (WLAN) communicationfunction. Here, assume that data (packet) communication in a wirelessLAN system complying with e.g., the IEEE 802.11 standard series will beperformed by the wireless LAN communication function. The mobilecommunication apparatus 200 can use the wireless LAN communicationfunction to perform communication based on Wi-Fi Direct (WFD),communication by a software access point mode, or communication by aninfrastructure mode. Note that the software access point mode is alsocalled a software AP mode, and the infrastructure mode is also called an“infra” mode.

Note that the mobile communication apparatus 200 may have a wirelesscommunication function other than for a wireless LAN complying with theIEEE 802.11 standard series. For example, the mobile communicationapparatus 200 may have a wireless LAN function that complies with astandard other than the IEEE 802.11 standard series or have acommunication function other than for a wireless LAN. However, it isassumed that the mobile communication apparatus 200 can operate in oneof a first mode of performing wireless communication with a partnerapparatus via another apparatus and a second mode of performing wirelesscommunication with a partner apparatus not via another apparatus. It isalso assumed that the mobile communication apparatus 200 cansimultaneously perform wireless communications by the first mode and thesecond mode. The mobile communication apparatus 200 can be, for example,a personal information terminal such as a PDA (Personal DigitalAssistant), a mobile phone, or a digital camera.

The print apparatus (MFP 300) can have a communication function thatperforms wireless communication with the mobile communication apparatus200. The print apparatus can also have other functions such as ascanning function (scanner), a FAX function, and a telephone function.Here, the wireless communication function is a function corresponding tothe communication function of the aforementioned mobile communicationapparatus 200. That is, assume that, for example, in a case in which themobile communication apparatus 200 has a wireless LAN communicationfunction, the MFP 300 has a wireless LAN communication function thatcomplies with the same standard. In this embodiment, the MFP 300 has ascanning function in addition to the print function, but the presentinvention is not limited to this. The MFP 300 may have only the printfunction or have a function unrelated to image processing such asprinting.

Note that the MFP 300 can also operate, in the same manner as the mobilecommunication apparatus 200, in one of a first mode of performingwireless communication with a partner apparatus via another apparatusand a second mode of performing wireless communication with a partnerapparatus not via another apparatus. Assume also that the MFP 300 cansimultaneously perform wireless communications by the first mode and thesecond mode.

An access point 400 has a wireless LAN communication function and relayscommunication between communication apparatuses functioning as wirelessLAN stations (may also be referred to as clients hereinafter) that havebeen permitted, by the access point, to connect to the access pointitself. In addition, the access point 400 can also relay communicationbetween an aforementioned communication apparatus and an apparatus (forexample, an apparatus directly connected to a network by a LAN cable orthe like) connectable via the network to which the access point 400 isconnected. A communication apparatus (station) which is present aroundthe access point 400 can perform communication by the infrastructuremode via the access point 400. Note that if the mobile communicationapparatus 200 is to communicate with a partner apparatus via anotherapparatus using a communication function which is not the wireless LAN,the access point 400 can be replaced with the other apparatus.

The mobile communication apparatus 200 and the MFP 300 can use theirrespective wireless LAN communication functions to perform wirelesscommunication by the infrastructure mode via the access point 400. Themobile communication apparatus 200 and the MFP 300 can also performwireless communication in a peer-to-peer mode (P2P mode) in accordancewith Wi-Fi Direct or the like. Note that, the mobile communicationterminal apparatus 200 and the MFP 300 can execute processingcorresponding to a plurality of print services via a wireless LAN, aswill be described later.

(Apparatus Arrangement)

FIG. 2 shows an example of the outer appearance of the mobilecommunication apparatus 200. This embodiment will describe a case inwhich the mobile communication apparatus 200 is a smartphone. Thesmartphone is a multi-function mobile phone which incorporates aplurality of functions such as a camera, a web browser, and an emailfunction. However, the mobile communication apparatus 200 need not be asmartphone. That is, the mobile communication apparatus 200 according tothis embodiment can be replaced by an arbitrary communication apparatusincorporating at least some of the functions to be described below.

The mobile communication apparatus 200 includes, for example, a touchpanel integrating a display unit 202 and an operation unit 203 and caninclude a bezel 201 portion that fixes or protects the touch panel. Notethat an antenna for performing communication by the wireless LAN can beprovided on the back side of the bezel 201, and the mobile communicationapparatus 200 can perform communication using this antenna and awireless communication circuit. The display unit 202 and the operationunit 203 can be, for example, a touch panel display having an LCDdisplay mechanism. For example, the display unit 202 displays buttonicons and a software keyboard, and the operation unit 203 can detect anoperation event when a user touches the icons and the keyboard. A powerkey 204 is a hard key used to accept an operation to turn on/off thepower.

FIG. 3 shows an example of the outer appearance of the MFP 300. In FIG.3, a document table 301 is a glass-like transparent table on which adocument to be scanned by a scanner (scanning unit) is placed. Adocument cover 302 is a cover used to press a document when the scannerscans the document and to prevent external leakage of light from a lightsource, with which the document is irradiated at the time of scanning. Aprinting paper insertion port 303 is an insertion port to supply papersheets of various sizes used for printing into the MFP 300. Paper sheetsset on the printing paper insertion port 303 are conveyed one by one toa printing unit and are discharged from a printing paper discharge port304 after printing is performed by the printing unit. An operationdisplay unit 305 is formed by including keys such as character inputkeys, a cursor key, a decision key, and a cancel key, an LED (LightEmitting Diode), and an LCD (Liquid Crystal Display). The user canperform various settings and activate the various functions of the MFPvia the operation display unit 305. The operation display unit 305 maybe formed by a touch panel. A housing 306 houses a circuit, a printmechanism, and the like forming the MFP 300. An antenna forcommunicating by the wireless LAN and a wireless communication circuitare also housed in the housing.

FIGS. 4A to 4C each schematically show an example of a screen which isdisplayed on the operation display unit 305 of the MFP. FIG. 4A is ahome screen that shows a state (idle state) in which the MFP is turnedon but no operation such as printing or scanning is performed. Byaccepting a key operation or a touch panel operation made by the user inthis state, the MFP can shift to executing processes related todisplaying a menu, various settings, or functions for copying, scanning,or a cloud function using Internet communication. The operation displayunit 305 can seamlessly display, from the home screen of FIG. 4A, afunction different from that of FIG. 4A by accepting the key operationor the touch panel operation made by the user. FIG. 4B is such anexample and shows an example of a screen in which it is possible toexecute a print or a photo function or change the LAN settings. FIG. 4Cis an example of a screen which is displayed when the operation displayunit 305 accepts a LAN setting selection in the screen of FIG. 4B.Changes to various kinds of LAN settings such as the setting toenable/disable the infrastructure mode (wireless LAN) or the setting toenable/disable the WFD mode (wireless direct) can be executed from thisscreen.

FIG. 5 shows an example of the arrangement of the mobile communicationapparatus 200. The mobile communication apparatus 200 includes, in oneexample, a main board 501 for performing main control of the apparatusitself and a WLAN unit 517 for performing communication by the wirelessLAN.

In the main board 501, a CPU (Central Processing Unit) 502 is a systemcontrol unit, and controls the overall operation of the mobilecommunication apparatus 200. The following processing by the mobilecommunication apparatus 200 is executed under the control of, forexample, the CPU 502. Note that the mobile communication apparatus 200can use an application-specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA), or the like to implement at least someof the functions.

A ROM 503 stores control programs to be executed by the CPU 502, anembedded operating system (OS) program, and the like. In thisembodiment, the respective control programs stored in the ROM 503perform software control such as scheduling and task switching under themanagement of the embedded OS stored in the ROM 503. A RAM 504 isimplemented by an SRAM (Static RAM) or the like, stores data such asprogram control variables, and stores data such as setting valuesregistered by the user and management data of the mobile communicationapparatus 200. The RAM 504 is provided with various work buffer areas.An image memory 505 is implemented by a memory such as a DRAM (DynamicRAM) and temporarily stores image data received via the WLAN unit 517and image data read out from a data storage unit 513 that are to beprocessed by the CPU 502. A nonvolatile memory 512 is formed from amemory such as a flash memory and continues to store data even when thepower of the mobile communication apparatus 200 is turned off. Note thatsuch memory structures are not limited to the above-describedstructures. For example, the image memory 505 and the RAM 504 may have ashared memory structure, or the data may be backed up in the datastorage unit 513. Although the image memory 505 has been described asbeing implemented by a DRAM, it may be implemented by another storagemedium such as a hard disk or a nonvolatile memory.

A data conversion unit 506 executes an analysis of data of variousformats and data conversion such as color conversion and imageconversion. A telephone unit 507 processes speech data input/output viaa loudspeaker unit 514 to generate and transmit a speech communicationsignal to a communication circuit or reconstruct the speech data from asignal received from the communication circuit. An operation unit 508generates and outputs a signal representing an operation which has beenaccepted via the operation unit 203 of FIG. 2. A GPS (Global PositioningSystem) 509 obtains position information such as the current latitudeand longitude of the mobile communication terminal apparatus 200. Adisplay unit 510 electronically controls the display contents of thedisplay unit 202 in FIG. 2, displays a screen for various inputoperations, and displays the operation states, status states, and thelike of the MFP 300.

A camera unit 511 has a function of electronically recording andencoding an image input via a lens. Image data related to an imagecaptured by the camera unit 511 is saved in the data storage unit 513.The data storage unit 513 can be a storage device in which various kindsof data are stored as described above. The loudspeaker unit 514implements the function of inputting or outputting speech for atelephone function and also other functions such as alarm notificationand the like. A power supply unit 515 is a battery of a size that can bestored in the mobile communication apparatus 200 and performs powersupply control to the apparatus. The mobile communication apparatus 200can be in one of power supply states including a battery dead state inwhich the battery has no remaining amount, a power-off state in whichthe power key 204 is not pressed, an active state in which the apparatusis normally active, and a power saving state in which the apparatus isactive but is set in a power saving mode.

The WLAN unit 517 is formed by including an antenna and a communicationcircuit (for example, a circuit having a baseband processing functionand an RF processing function) to perform wireless communicationcomplying with the wireless LAN standard. The mobile communicationapparatus 200 performs, via the WLAN unit 517, data communication usingthe wireless LAN with another device such as an MFP serving as thepartner apparatus. The WLAN unit 517 can convert data into packets andperform wireless packet transmission to another device. The WLAN unitcan also receive packets wirelessly transmitted from the other externaldevice, reconstruct the original data, and transmit the reconstructeddata to the CPU 502.

The respective components of the main board 501 are connected to eachother via a system bus 518 managed by the CPU 502. The WLAN unit 517 isconnected to the system bus 518 of the main board 501 via a bus cable516. Therefore, under the control of the CPU 502, data generated orstored by the respective components of the main board 501 aretransmitted via the WLAN unit 517, and data received by the WLAN unit517 are transferred to the respective components of the main board 501.

Note that the mobile communication apparatus 200 can have functions of ageneral smartphone such as a communication function for cellularcommunication.

FIG. 6 shows an example of the arrangement of the MFP 300. The MFP 300includes, in one example, a main board 601 for performing main controlof the apparatus itself and a WLAN unit 616 for performing communicationby a wireless LAN, and a modem 619 for wired communication.

In the main board 601, a CPU (Central Processing Unit) 602 is a systemcontrol unit, and controls the overall operation of the MFP 300. Thefollowing processing by the MFP 300 is executed, for example, under thecontrol of the CPU 602. Note that the MFP 300 can use anapplication-specific integrated circuit (ASIC), a field programmablegate array (FPGA), or the like to implement at least some of thefunctions.

A ROM 603 stores control programs to be executed by the CPU 602, anembedded operating system (OS) program, and the like. In thisembodiment, the respective control programs stored in the ROM 603perform software control such as scheduling and task switching under themanagement of the embedded OS stored in the ROM 603. A RAM 604 isimplemented by an SRAM (Static RAM) or the like, stores data such asprogram control variables, and stores data such as setting valuesregistered by the user and management data of the MFP 300. The RAM 604is provided with various work buffer areas. A nonvolatile memory 605 isformed from a memory such as a flash memory and continues to store dataeven when the power of the MFP 300 is turned off. An image memory 606 isimplemented by a DRAM (Dynamic RAM) or the like and stores image datareceived via the WLAN unit 616 and image data processed by anencoding/decoding processing unit 611. Also, similarly to the memorystructure of the mobile communication apparatus 200, the memorystructure of the MFP 300 is not limited to the above-describedstructure.

A scan control unit 607 controls a scanning unit 609 (for example, a CISimage sensor (contact type image sensor)) to optically scan a documentplaced on the document table 301 of FIG. 3, and an image signalgenerated by converting the scanned document into electrical image datais output. At this time, the scan control unit 607 may perform variouskinds of image processing such as binarization processing and halftoneprocessing on the image data and output the resultant image data. A dataconversion unit 608 executes an analysis of data of various formats,conversion from image data into print data, and the like. A FAX controlunit 617 transmits, for example, image data scanned by the scanning unit609, receives FAX data received from an external apparatus, and performscontrol to reconstruct an image from the received data. The FAX controlunit 617 can, for example, transmit/receive FAX data to/from theexternal apparatus via the modem 619.

An operation display unit 610 generates a signal representing a useroperation accepted via the operation display unit 305 of FIG. 3 andcontrols the information to be displayed on the operation display unit305. The operation display unit 610 displays, for example, the screen ofFIG. 4A in the initial state, displays a screen as that of FIG. 4B inresponse to accepting predetermined processing by the user, or cantransmit a signal instructing the execution of the predeterminedprocessing to each processing unit in the main board. Theencoding/decoding processing unit 611 executes encoding processing anddecoding processing and enlargement/reduction processing of image data(JPEG, PNG, or the like) handled by the MFP 300.

A paper feed unit 613 holds paper sheets and supplies paper sheets forprinting under the control of a print control unit 614. As the paperfeed unit 613, a plurality of paper feed units can be prepared so as tohold a plurality of types of paper sheets in one apparatus. In thiscase, the print control unit 614 can perform control to select a paperfeed unit to be used to supply paper sheets. The print control unit 614performs various kinds of image processing such as smoothing processing,print density correction processing, and color correction to the printtarget image data and outputs the processed image data to a printingunit 612. The printing unit 612 can be a circuit and a mechanismfunctioning as an inkjet printer which prints an image by discharging,from a printhead, ink supplied from an ink tank. The print control unit614 can also periodically read out the information of the printing unit612 and perform control to update the information stored in the RAM 604.For example, the print control unit 614 can update status information,such as the remaining amount in an ink tank and the state of theprinthead, which are stored in the RAM 604.

A NW (network) subsystem 620 is a subsystem in charge of controlling theinput/output related to network communication in order to reduce thecontrol load of the CPU (Central Processing Unit) 602. A control code tobe executed by a NW sub-CPU 621 is stored in a part of the RAM 604, andthis control code is DMA-transferred from the RAM 604 to a RAM 622 inthe subsystem 620 in a boot sequence of the CPU 602. The control code isexecuted by the NW sub-CPU 621 after the NW sub-CPU 621 is reset. Asresult, input/output control related to network communication isexecuted. The respective modules (the NW sub-CPU 621, the RAM 622, and aUHOST module 623) in the NW subsystem are connected to each other via alocal bus 624 separate from a system bus 625 of the main board 601. TheNW subsystem 620 is capable of performing network control that hasminimal influence on other modules in the main board 601 by taking on,among the functions related to network communications, particularly,functions of a layer near the hardware layer.

The WLAN unit 616 is the same as the WLAN unit 517 of the mobilecommunication apparatus 200. Hence, a detailed description will beomitted. The WLAN unit 616 is connected, for example, to the NWsubsystem 620 via, for example, the UHOST module 623 and a bus cable615. The modem 619 is, for example, a functional unit to perform wiredcommunication and is formed by including a circuit and a mechanism forperforming data (packet) communication complying with, for example, theIEEE 802.3 standard series. The modem 619 includes, for example, anEthernet® interface and is connected to a LAN by a cable connected tothis interface. This allows communication with an external device suchas a PC that has been similarly connected to a LAN. In addition, themodem 619 can communicate with, via the wired LAN, a communicationapparatus that is connected to the access point which is connected tothe wired LAN. The modem 619 can be connected to the system bus 625 ofthe main board 601 via a bus cable 618 but may be connected to, forexample, the local bus 624 of the NW subsystem 620. Note that therespective components of the main board 601 are connected to each othervia the system bus 625 managed by the CPU 602.

(Wireless Connection Method)

In this embodiment, the P2P mode in which a communication apparatusdirectly communicates with a partner apparatus not via another apparatusand the infrastructure mode in which the communication apparatusindirectly communicates with the partner apparatus via another apparatussuch as an access point can be used as the connection methods of thewireless LAN.

The P2P mode can have a plurality of modes. In these modes, for example,the communication apparatus uses a common search request command (forexample, a Probe Request frame) between the modes to search for anddiscover the communication partner apparatus. It is possible to transmita search request command added with various kinds of attributeinformation. Normally, if attributes are designated in a search requestcommand, it is recommended that the apparatus which received the searchrequest command transmits a response related to interpretable attributesas widely as possible within the range defined by the specifications ofthe mode and specifications based on which the mode is defined (Wi-Fifor WFD). Also, in a case in which a piece of uninterpretableinformation is included in the information (including the aforementionedattributes) added to the search request command, the apparatus whichreceived the search request command can respond based on onlyinformation that can be interpreted.

The plurality of modes included in the aforementioned P2P mode caninclude further modes called a mode A (software AP mode) and a mode B(Wi-Fi Direct mode). For the respective modes, compatible devices may bedifferent, and usable applications may also be different.

FIG. 7 shows an example of the procedure of the wireless connectionprocessing of the mode A (software AP mode). In the software AP mode,one apparatus, out of a communication apparatus and a partner apparatus,functions as a software AP by implementing an access point function bysoftware, and the other apparatus operates as a client that connects tothe software AP. Assume that the mobile communication apparatus 200serves as the client having the role to request various services andthat the MFP 300 will serve as the software AP, hereinafter.

In the software AP mode, the client searches for a device which willserve as a software AP by using a search request command 701, and thesoftware AP responds by transmitting a search response 702 to the searchrequest command 701. When the software AP is discovered by the client,the remaining wireless connection processing (establishment of awireless connection and the like) is performed between the client andthe software AP, and then IP connection processing (allocation of IPaddresses and the like) is executed. Note that as commands andparameters transmitted/received to establish a wireless connectionbetween the client and the software AP, those which are defined by, forexample, the Wi-Fi standard or IEEE 802.11 standard are used, and adescription thereof will be omitted.

FIG. 8 shows an example of the procedure of the wireless connectionprocessing of the mode B (Wi-Fi Direct (WFD) mode). Note that a devicethat can communicate by the WFD mode will invoke a dedicated applicationto implement this communication function in response to accepting, forexample, a user operation via the operation unit of the device.Subsequently, a negotiation to perform WFD communication can be executedbased on a user operation of an operation screen serving as a UI (userinterface) provided by the application. In the WFD mode, after thecommunication apparatus searches for a partner apparatus by the searchrequest command, the roles of a P2P Group Owner (GO) and a P2P Client(CL) are decided between the communication apparatus and the partnerapparatus, and the remaining connection processing is performed. Thisrole decision can be performed by, for example, a GO Negotiation in theWFD standard.

For example, the communication apparatus transmits a search requestcommand 801 and searches for a partner apparatus to connect by the WFDmode. The partner apparatus responds by transmitting a search response802 to the received search request command 801. When the partnerapparatus is discovered by the communication apparatus, thecommunication apparatus and the partner apparatus confirm informationabout services and functions which can be provided to each other (deviceinformation confirmation). The services and functions are, for example,a print service, an image display service, a file transmission service,a video streaming service, a video display service, and the like. Notethat the device information confirmation is not essential but optional.This device information confirmation phase is performed by, for example,a Service Discovery of the WFD standard. By confirming the deviceinformation of each other, the communication apparatus and the partnerapparatus can know, before performing the WFD connection, what kind ofservice can be provided by the other apparatus which is connectable bythe WFD mode. When the partner apparatus is discovered by thecommunication apparatus, an apparatus which is to operate as the P2PGroup Owner (GO) and that which is to operate as the P2P Client (CL) aredecided. This role decision can be performed by, for example, the GONegotiation of the WFD standard. In the GO Negotiation, thecommunication apparatus and the partner apparatus transmit to each otherthe respective Intent values, which are values set in the respectiveapparatuses, to compare the magnitudes of the Intent values. Next, as aresult of the comparison, the communication apparatus and the partnerapparatus decide that the apparatus which has the larger value willoperate as the GO and the apparatus which has the smaller value willoperate as the CL. If the respective Intent values have the same values,the communication apparatus and the partner apparatus will comparerandom values (0 or 1) generated after the initial comparison and decidethe roles of the GO and the CL. After the roles of the GO and the CL aredecided, the communication apparatus and the partner apparatus shift toa parameter exchange phase and exchange parameters to perform WFDcommunication. Subsequently, the communication apparatus and the partnerapparatus perform the remaining wireless connection processing and theIP connection processing based on the exchanged parameters. Note that inthe parameter exchange phase, parameters (for example, information usedfor encrypted communication) concerning the security of the wireless LANare automatically exchanged by using, for example, a Wi-Fi ProtectedSetup. As the parameters, for example, an SSID as identificationinformation of a wireless network, an encryption key, an encryptionscheme, an authentication key, an authentication scheme, and the likeare included.

The infrastructure mode will be described next. FIG. 9 is a sequencechart showing an example of the procedure of the wireless connectionprocessing of the infrastructure mode. In the infrastructure mode, thecommunication apparatus creates a network, connects to an access point(AP) controlling the network, and communicates with the partnerapparatus via the AP. For example, the mobile communication apparatus200 and the MFP 300 connect to the access point 400 and communicate witheach other via the access point 400.

In the infrastructure mode, each communication apparatus searches for anAP by a search request command 901 (search request command 903). The APresponds by transmitting a search response 902 (search response 904) tothe received search request command. Next, when the AP is discovered bythe communication apparatus, the remaining wireless connectionprocessing (establishment of a wireless connection and the like) and IPconnection processing (allocation of IP addresses and the like) areperformed between the communication apparatus and the AP. Note thatsince it is sufficient to use commands and parameters defined by theWi-Fi standard or the IEEE 802.11 standard as the commands and theparameters transmitted/received to establish a wireless connectionbetween the communication apparatus and the AP, and a descriptionthereof will be omitted.

(Channel Decision Processing of Infrastructure Mode and P2P Mode)

When performing wireless communication by concurrently performing theinfrastructure mode and the P2P mode, the communication apparatus uses achannel provided from the AP in the infrastructure mode as the commonchannel for both modes. Hence, wireless communication using both modescan be stably maintained in the communication apparatus. A mode that canconcurrently (simultaneously) execute a plurality of communication modesin this manner is called a simultaneous operation mode. The wirelessconnection of the infrastructure mode is performed using a specificfrequency band (wireless channel).

In the infrastructure mode, a station (STA) confirms whether it ispossible to wirelessly connect to the AP in a channel usable by thestation. Next, the STA specifies the channel which received a responsefrom the AP and decides to use the channel as the subsequent usechannel. That is, the AP transmits a response command to the STA onlywhen a request command from the STA arrives in a channel that the AP canuse.

In a wireless communication system formed by the AP and the STA, anapparatus which operates as the AP transmits a Beacon signal, and anapparatus which operates as the STA transmits a search request commandto the AP upon receiving this beacon signal. The search request commandis, for example, a Probe Request frame. The AP does not transmit aresponse command to a search request command transmitted on a channelother than channels that can be used by the AP itself. Here, theresponse command is, for example, a Probe Response Frame.

For example, if the channel that can be used by the access point 400 isthe nth channel, the access point 400 does not transmit a searchresponse command to the search request command transmitted using the 1stchannel. If the MFP 300 determines that no response has been receivedfrom the access point 400 due to a timeout or the like aftertransmitting the search request command using the 1st channel, a searchrequest command is subsequently transmitted using the 2nd channel. TheMFP 300 repeats the above-described trial by increasing the channelnumbers. When the MFP 300 transmits a search request command using thenth channel, the access point 400 transmits a search response command ifthe channel is in an unused state.

In the infrastructure mode, the nth channel in which a search responsecommand is returned from the access point in this above-described manneris used in the subsequent wireless communication operation.

The wireless connection of the P2P mode is performed using a specificfrequency band (wireless channel). At this time, to stably maintain thewireless communication by the infrastructure mode and the P2P mode, thechannel in which a response was received from the AP in theinfrastructure mode is obtained and set as the common channel for the GOof the P2P mode.

A channel defined by the Wi-Fi standard is used in each of theinfrastructure mode and the P2P mode. In the Wi-Fi standard, 1 to 13channels can be used as channels of a 2.4 GHz frequency band dependingon the country or region. In this embodiment, a description will begiven assuming that the range of usable channels is 1 to 13 channels.However, the present invention is not limited to this. That is, althoughthe number of channels may increase in a different frequency band or thechannels may be limited to 1 to 11 channels even in the same frequencyband depending on the frequency band regulations according to eachcountry or region, the method according to this embodiment is usable inan actually usable channel range. For example, in the IEEE 802.11awireless LAN standard, a frequency band of 5 GHz is used. Hence, it isknown that a range of about 36 to 140 channels can be used. Note thatfor a communication apparatus using both frequency bands 2.4 GHz (1 to13) and 5 GHz (36 to 140), this means that the number of channels totransmit a search request command to the AP will increase.

(Processing Procedure)

An example of the procedure of the processing to be executed in thisembodiment will be described next. First, a wireless channel settingmethod used in simultaneous connection by a plurality of modes such asthe P2P mode and the infrastructure mode or reconnection by theinfrastructure mode will be described. FIG. 10 shows an example of theprocedure of the connection processing when a simultaneous operation bythe P2P mode and the infrastructure mode is to be executed in the MFP300. Note that each step of FIG. 10 is implemented when, for example,the CPU 602 of the MFP 300 loads a program stored in a memory such asthe ROM 603 to the RAM 604, and executes the program. Additionally, theflowchart of FIG. 10 starts when, for example, a trigger such as awireless LAN connection start instruction by the operation unit or poweron is generated in the MFP 300. Note that although the procedure of theprocessing of the MFP 300 will be described in this embodiment, the sameprocessing may be executed by the mobile communication apparatus 200.

First, the MFP 300 searches for the access point 400 to connect by theinfrastructure mode and executes wireless connection processing upondiscovering the access point 400 (step S1001). If the wirelessconnection by the infrastructure mode is successful (YES in step S1002),the MFP 300 subsequently uses the wireless channel used in theinfrastructure mode to execute the connection processing of the P2P mode(step S1003).

On the other hand, during a period when the connection by theinfrastructure mode does not succeed (NO in step S1002), the MFP 300executes a timeout determination (step S1004). The timeout determinationcan be a determination about whether the time elapsed since the start ofthe connection processing has exceeded a timeout value saved in thenonvolatile memory 512. If the elapsed time since the start of theconnection processing by the infrastructure mode has not exceeded thetimeout value (NO in step S1004), the MFP 300 continues to execute theconnection processing (step S1001). On the other hand, if the elapsedtime since the start of the connection processing has exceeded thetimeout value (YES in step S1004), the MFP 300 stops the connectionprocessing by the infrastructure mode and advances the process to stepS1005. This is because it is highly likely that such a case is a statein which a connection is impossible due to a reason such as the accesspoint is turned off.

In step S1005, the MFP 300 refers to, for example, the nonvolatilememory 512 and determines whether a channel information history isstored. Here, the channel information history is information whichincludes at least information that specifies the wireless channel whichwas used in a past infrastructure mode connection. If the MFP 300 isconnected by the infrastructure mode, information such as the channelnumber or the like used at that time is stored as a channel informationhistory in, for example, the nonvolatile memory 512. If there is achannel information history (YES in step S1005), the MFP 300 executesthe connection processing of the P2P mode by using the channel includedin this history when reconnection by the infrastructure mode is to beperformed (step S1007). This is because there is high probability thatthe MFP 300 is permanently placed in, for example, a home or an office,and that the AP which is to be the connection target is the same AP towhich the MFP has connected in the past. That is, when reconnection bythe infrastructure mode is to be established, there is high probabilitythat a channel which has been used in the past will be used.

Note that a channel information history of a case in which a connectionwas established through an authentication processing with, for example,the AP, can be stored so that the connection target AP will be limitedeven in the case of moving communication apparatus such as the mobilecommunication apparatus 200. Hence, even in the case of the mobilecommunication apparatus 200, the probability that the wireless channelincluded in the channel information history will be reused becomes highwhen performing reconnection by the infrastructure mode. The recordingmethod of the channel information history can be set so that the mostrecently used channel information is recorded by writing over the recordof a history on the nonvolatile memory 512 as described above. That is,it may be set so as to erase the old record by writing over the recordin this way. Also, it may be set so that a predetermined number ofhistories may be recorded, and a past use count and a use time may berecorded together for each channel. In this case, when a channel is tobe selected in step S1007, a channel with the highest use count or achannel with the longest use time of the channels recorded in thehistory may be preferentially selected.

On the other hand, if there is no channel information history (NO instep S1005), the MFP 300 uses a predetermined wireless channel stored inthe nonvolatile memory 512 and designated as the initial value andexecutes the connection processing of the P2P mode (step S1006).

FIG. 11 shows the procedure of the reconnection processing of theinfrastructure mode in a case in which, for example, a connection by theinfrastructure mode is unsuccessful even when it has been set to performsimultaneous connection by a plurality of modes in FIG. 10 and theconnection has been established only by the P2P mode. Note that eachstep in the flowchart of FIG. 11 can be implemented, in the same manneras FIG. 10, by the CPU 602 of the MFP 300 loading a control programstored in a memory such as the ROM 603 to the RAM 604 and executing theprogram. After the connection by the P2P mode is completed, the MFP 300executes the AP search processing of step S1101 in the background. TheAP search is processing to search for an AP (for example, the accesspoint 400) present around the MFP 300 by the search request command. Ifan AP cannot be detected (NO in step S1102), the MFP 300 repetitivelyexecutes the AP search (step S1101). On the other hand, if an AP isdetected (YES in step S1102), the MFP 300 determines whether thewireless channel used when the AP was detected is the same wirelesschannel used in the P2P mode (step S1103).

If the wireless channel which discovered the AP and the channel used inthe P2P mode match (YES in step S1103), the MFP 300 issues, to the NWsubsystem 620, an APJOIN command using the obtained SSID and password(step S1104). The APJOIN command is a command used in the MFP 300 towirelessly output a device connection request from the WLAN unit 616 tothe AP (for example, the access point 400) that has been detected by theAP search in step S1101. After the device connection request is issued,the MFP 300 stands by until the connection by the infrastructure mode iscompleted (step S1105). Then, if the connection by the infrastructuremode has been completed (YES in step S1105), the MFP 300 ends theprocessing of FIG. 11.

On the other hand, if it is determined that the wireless channel whichdiscovered the AP and the channel used in the P2P mode do not match (NOin step S1103), the MFP 300 issues, to the NW subsystem 620, a STOPcommand of the infrastructure mode (step S1106). Subsequently, the MFP300 issues a STOP command of the P2P mode to the NW subsystem 620 (stepS1107). The STOP command is a command used in the MFP 300 to stop theoperation of the infrastructure mode or the P2P mode. After theoperations the infrastructure mode and the P2P mode have been stopped,the MFP 300 issues, to the NW subsystem 620, the APJOIN command usingthe obtained SSID and password (step S1108). The MFP 300 then stands byuntil the connection by the infrastructure mode is completed (stepS1109). When the connection by the infrastructure mode is completed (YESin step S1109), the MFP 300 issues, to the NW subsystem 620, a commandto set the parameters such as the connection channel information and thelike, necessary for the connection by the P2P mode (step S1110).Subsequently, the MFP 300 stands by until the connection by the P2P modehas been completed (step S1111) and ends the processing of FIG. 11 whenthe connection by the P2P mode has been completed (YES in step S1111).

Note that the MFP 300 may execute the processing of FIG. 12 instead ofthe processing of FIG. 11. That is, the MFP 300 can execute theprocessing of FIG. 12 when, for example, the connection by theinfrastructure mode is unsuccessful and a connection by only the P2Pmode is performed even when it has been set to perform simultaneousconnection by a plurality of modes in FIG. 10.

The processing of FIG. 11 and the processing of FIG. 12 are different inthat there is no process of step S1106, that is, the process of issuinga STOP command of the infrastructure mode to the NW subsystem 620 in theprocessing of FIG. 12. A case in which the processing of either FIG. 11or FIG. 12 is to be executed is when a connection by the infrastructuremode cannot be made. Thus, a connection by the infrastructure mode ispossible just by issuing the APJOIN command of step S1108 withoutissuing the STOP command of the infrastructure mode as in step S1106 ofFIG. 11. Hence, in the processing of FIG. 12, the MFP 300 does not issuethe STOP command of the infrastructure mode to the NW subsystem 620 andissues only the APJOIN command in step S1207.

With the above-described arrangement, even when the MFP 300 is connectedby only the P2P mode in a state in which a simultaneous wirelessconnection has been enabled, it is possible to simultaneously operate ina plurality of modes by setting a suitable channel by the connectionprocessing of the infrastructure mode. Therefore, by setting the powerof the access point 400 to be turned on when the connection by theinfrastructure mode cannot be made because the access point 400 is in apower-off state, it is possible to perform simultaneous communicationsin accordance with the user settings, thereby improving usability.

Note that, as described above, the processing described in thisembodiment can be executed by the mobile communication apparatus 200.That is, if it is a communication apparatus that can performsimultaneous communications by the infrastructure mode and the P2P mode,the above-described processes can be executed.

The above-described processing was described as processing for a case inwhich the connection by the infrastructure mode is a reconnection.However, the same processing can be executed when an initial connectionby the infrastructure mode is to be performed. That is, theabove-described processing can be executed when a communicationapparatus with settings to perform simultaneous communications in theinfrastructure mode and the P2P mode tries to establish the connectionby the infrastructure mode while only the connection by the P2P mode hasbeen established.

In addition, although the examples of the infrastructure mode and theP2P mode were described in the above-described embodiment, the presentinvention is not limited to them. That is, in a communication apparatuscapable of simultaneous communications in a plurality of modes, theabove-described processing is applicable under a condition in which awireless channel is to be selected using one mode of the plurality ofcommunication modes as a reference. In this case, the one mode used as areference for selecting a wireless channel is handled in the same manneras the above-described infrastructure mode.

Other Embodiments

Embodiment(s) of the present invention can also be realized by acomputer of a system or apparatus that reads out and executes computerexecutable instructions (e.g., one or more programs) recorded on astorage medium (which may also be referred to more fully as a‘non-transitory computer-readable storage medium’) to perform thefunctions of one or more of the above-described embodiment(s) and/orthat includes one or more circuits (e.g., application specificintegrated circuit (ASIC)) for performing the functions of one or moreof the above-described embodiment(s), and by a method performed by thecomputer of the system or apparatus by, for example, reading out andexecuting the computer executable instructions from the storage mediumto perform the functions of one or more of the above-describedembodiment(s) and/or controlling the one or more circuits to perform thefunctions of one or more of the above-described embodiment(s). Thecomputer may comprise one or more processors (e.g., central processingunit (CPU), micro processing unit (MPU)) and may include a network ofseparate computers or separate processors to read out and execute thecomputer executable instructions. The computer executable instructionsmay be provided to the computer, for example, from a network or thestorage medium. The storage medium may include, for example, one or moreof a hard disk, a random-access memory (RAM), a read only memory (ROM),a storage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2016-101941, filed May 20, 2016 which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. A communication apparatus comprising: a communication unit capable of concurrently performing first communication in which communication with a partner apparatus is performed via another apparatus that decides a wireless channel to be used in the wireless communication and second communication in which communication with the partner apparatus is performed not via another apparatus by the communication apparatus deciding the wireless channel; and a control unit configured to set, when a connection for the first communication is to be established while a connection for the second communication is established in a state in which the first communication and the second communication are concurrently performed, a second wireless channel to be used in the second communication so that the second wireless channel matches a first wireless channel to be used when the connection for the first communication is established.
 2. The apparatus according to claim 1, wherein in the state in which the first communication and the second communication are concurrently performed, if the second wireless channel does not match the first wireless channel when the connection for the first communication is to be established, the control unit controls the communication unit so as to stop the second communication and establish the connection for the second communication by using the first wireless channel after the connection for the first communication is established.
 3. The apparatus according to claim 1, wherein in the state in which the first communication and the second communication are concurrently performed, if the connection for the second communication is to be established in a state in which the connection for the first communication has not been established, the control unit controls the communication unit so as to set a wireless channel to be used in the second communication based on a history of a wireless channel used in the first communication.
 4. The apparatus according to claim 3, wherein if there is no history of the wireless channel used in the first communication, the control unit controls the communication unit so as to set a predetermined wireless channel as the wireless channel to be used in the second communication.
 5. The apparatus according to claim 3, wherein in the state in which the first communication and the second communication are concurrently performed, if the connection for the first communication is not successfully established, the control unit controls the communication unit so as to execute processing for establishing the connection for the second communication in a state in which the connection for the first communication has not been established.
 6. The apparatus according to claim 5, wherein in the state in which the first communication and the second communication are concurrently performed, if a time which has elapsed without successful establishment of the connection for the first communication since the start of processing for establishing the connection exceeds a timeout value, the control unit determines that the connection for the first communication has not been successfully established.
 7. The apparatus according to claim 1, wherein the communication is wireless communication by a wireless LAN complying with IEEE 802.11 standard series.
 8. The apparatus according to claim 7, wherein the first communication is communication in an infrastructure mode of the wireless LAN, and the second communication is communication in a peer-to-peer mode of the wireless LAN.
 9. The apparatus according to claim 8, wherein the peer-to-peer mode includes at least one of a Wi-Fi Direct mode and a software access point mode.
 10. The apparatus according to claim 1, further comprising at least one of a print unit capable of performing print, a scanning unit capable of performing scan of a document, a FAX unit capable of transmitting data by FAX, and a telephone unit that can be used when performing speech communication.
 11. The apparatus according to claim 1, wherein the communication apparatus is a mobile communication apparatus.
 12. A control method of a communication apparatus that includes a communication unit capable of concurrently performing first communication in which communication with a partner apparatus is performed via another apparatus that decides a wireless channel to be used in the wireless communication and second communication in which communication with the partner apparatus is performed not via another apparatus by the communication apparatus deciding the wireless channel, the method comprising: setting, when a connection for the first communication is to be established while a connection for the second communication is established in a state in which the first communication and the second communication are concurrently performed, a second wireless channel to be used in the second communication so that the second wireless channel matches a first wireless channel to be used when the connection for the first communication is established.
 13. A non-transitory computer-readable storage medium storing a computer program to cause a computer included in a communication apparatus that includes a communication unit capable of concurrently performing first communication in which communication with a partner apparatus is performed via another apparatus that decides a wireless channel to be used in the wireless communication and second communication in which communication with the partner apparatus is performed not via another apparatus by the communication apparatus deciding the wireless channel, to set, when a connection for the first communication is to be established while a connection for the second communication is established in a state in which the first communication and the second communication are concurrently performed, a second wireless channel to be used in the second communication so that the second wireless channel matches a first wireless channel to be used when the connection for the first communication is established. 